import { getDestination, createCircuit } from "@/utils/method.js";
import { post } from "@/service/request.js"

export default {
  data() {
    return {
      ulshow: false, // 目的地一级菜单ul
      typesShow: false, // 路线类型
      citys: false, // 目的地二级菜单
      guide: false, // 自由行
      submit: false, // 提交
      cancel1: false, // 字体的模糊
      // 
      destinations: [
      ],
      // 市级容器
      city: [],
      //线路类型
      circuittypes: [],
      // 第三方导游
      value: true,
      setCiruit: {
        route_title: "", //线路名
        destination_id: "", // 目的地 id:int
        route_category_id: "", // 线路类型 int
        days: "", // 出游天数
        is_has_default_guide: 0, // 是否自由行
        is_allow_other_guide: false, // 第三方导游跟团
        static_list: [], // 图片
        other_guide_cost: "", // 第三方导游成本
        other_guide_service_fee: "", // 第三方导游服务费
        route_service_details_list: [],
        agency_price: "", // 基本服务费 float
        expense_description: "", // 费用说明
        precautions: "", // 注意事项
        one_refund_scale: 100, // 一等退费
        second_refund_scale: "", // 二等退费
        three_refund_scale: "", // 三等退费
        fourth_refund_scale: 0, // 四等退费
        auto_in_operation: 1, // 自动上架
      },
    }
  },
  beforeCreate() {
    // 获取目的地    省份
    getDestination().then((res) => {
      this.destinations = res.data.data
      // console.log(this.destinations);
    })
      .catch((error) => {
        console.log(error);
      });

    // 获取线路类型
    post("center_region/api/travel_agency/getallroutecategory", '')
      .then((res) => {
        this.circuittypes = res.data.data
      })
      .catch((error) => {
        console.log(error);
      });
  },
  methods: {
    // 展开选择框
    unfold() {
      // console.log(this.$refs.ul);
      this.ulshow = !this.ulshow
      this.typesShow = false
    },

    // 收拢并获取其中值赋值
    thisActive(item, index) {
      // console.log(item, index);
      this.citys = true
      // 给内容赋值
      item.path[2].childNodes[0].data = item.target.childNodes[0].data

      // 把需要的数据push到二级菜单内
      this.city = this.destinations[index].other_list[0].city_list
    },

    // 获取 市内容
    getcity(e, id) {
      this.ulshow = false
      this.citys = false

      // 给内容赋值
      e.path[3].childNodes[0].data = e.target.childNodes[0].data

      this.setCiruit.destination_id = id
    },

    // 线路类型
    setTypes(e) {
      this.typesShow = false // 样式修饰
      let text = e.target.childNodes[0].data
      let num = e.target.childNodes[1].childNodes[0].data * 1

      this.setCiruit.route_category_id = num // 请求类型参数
      e.path[2].childNodes[0].data = text // 视图数据
    },

    // 获取 int 数据
    // numFilter(e) {
    //   let value = e.target.value
    //   const realVal = parseFloat(value).toFixed(2);
    //   this.setCiruit.agency_price = realVal * 1
    // }
    // ,
    // 自由行数据
    getnumber(e) {
      this.guide = false
      console.log();
      let text = e.target.childNodes[0].data
      e.path[2].childNodes[0].data = text
      if (text === '是') {
        this.setCiruit.is_has_default_guide = 1
      } else if (text === '否') {
        this.setCiruit.is_has_default_guide = 0
      }
    },
    indexclick() { // 文件不同的显示
      this.$emit("indexChange", 0);
    },
    // 数据的额变化
    verlifydata() {
      // 过滤空对象
      let ele = this.route_service_details_list.filter(item => {
        return item.content != ''
      })
      this.setCiruit.static_list = this.static_list.filter(item => {
        return item.file_url != ''
      })

      // 清除视频上传时的异常数据
      this.setCiruit.route_service_details_list = ele.filter(item => {
        Reflect.deleteProperty(item, 'url');
        return item
      })
      // 格式转换
      this.setCiruit.second_refund_scale = this.setCiruit.second_refund_scale * 1
      this.setCiruit.three_refund_scale = this.setCiruit.three_refund_scale * 1

      let b = parseFloat(this.setCiruit.agency_price)
      this.setCiruit.agency_price = b.toFixed(2) * 1

      if (this.setCiruit.other_guide_cost != "" && this.setCiruit.other_guide_service_fee != "") {
        // 第三方导游成本
        let c = parseFloat(this.setCiruit.other_guide_cost)

        this.setCiruit.other_guide_cost = c.toFixed(2) * 1

        // 第三方导游服务费
        let d = parseFloat(this.setCiruit.other_guide_service_fee)
        this.setCiruit.other_guide_service_fee = d.toFixed(2) * 1
      } else if (this.setCiruit.other_guide_cost == "" && this.setCiruit.other_guide_service_fee == "") {
        this.setCiruit.other_guide_cost = 0
        this.setCiruit.other_guide_service_fee = 0
      }
      // console.log(this.setCiruit);
      this.$emit('setCiruitdata', this.setCiruit) // 用于动态添加数据的
    },
    // 提交数据
    showCircuit() {
      if (this.setCiruit.route_title != ""
        && this.setCiruit.destination_id != ""
        && this.setCiruit.precautions != ""
        && this.setCiruit.three_refund_scale != "") {
        this.submit = true
        this.verlifydata()
        // console.log(this.setCiruit);
      } else {  // 没传图片和视频等
        this.$message.error('请先提交完善的资料哦😅')
        this.cancel()
      }
    },
    // 确定和取消
    circuitsubmit() {
      console.log(this.setCiruit);
      createCircuit(this.setCiruit).then((res) => {
        console.log(res);
        if (res.data.code == 4000) {
          this.$message.error(res.data.msg + "🧐")
          this.cancel()
          return
        } else {
          this.$message({ message: "提交成功请耐心等待 😊", type: "success" })
          this.cancel()
          this.indexclick() // 添加完成后跳回线路列表
        }

      })
        .catch(() => {
        });
    },
    cancel() {
      this.submit = false
      // if (this.cancel1) {
      //   this.$refs.circuit.style.filter = "none"
      // }
    },
  },
}